A Comparison of NOOP to Structural Domain-Theoretic Models of Object-Oriented Programming
نویسنده
چکیده
Mainstream object-oriented programming (OOP) languages such as Java, C#, C++ and Scala are all almost entirely nominally-typed. NOOP is a recently developed domain-theoretic model of OOP that was designed to fully include nominal information found in nominally-typed OOP. This paper compares NOOP to the most widely known domain-theoretic models of OOP, namely, the models developed by Cardelli and Cook, which were structurally-typed models. The comparison provides a mathematical account for the relation between nominal and structural OO languages and nominal and structural OO type systems.
منابع مشابه
NOOP: A Domain-Theoretic Model of Nominally-Typed OOP
The majority of industrial-strength object-oriented (OO) software is written using nominally-typed OO programming languages. Extant domain-theoretic models of OOP developed to analyze OO type systems miss, however, a crucial feature of these mainstream OO languages: nominality. This paper presents the construction of NOOP as the first domain-theoretic model of OOP that includes full class/type ...
متن کاملA Domain-Theoretic Model Of Nominally-Typed Object-Oriented Programming
The majority of contemporary mainstream object-oriented (OO) software is written using nominally-typed OO programming languages. Extant domain-theoretic models of OOP developed to analyze OO type systems miss crucial features of these mainstream OO languages, such as nominality. This paper summarizes the construction of NOOP as a domain-theoretic model of OOP that includes nominal information f...
متن کاملDomain Theory for Modeling OOP: A Summary (Domain Theory for The Construction of NOOP, and The Construction of COOP as a Step Towards Constructing NOOP)
Domain theory is ‘a mathematical theory that serves as a foundation for the semantics of programming languages’ [AJ94]. Domains form the basis of a theory of partial information, which extends the familiar notion of partial function to encompass a whole spectrum of “degrees of definedness”, so as to model incremental higher-order computation (i.e., computing with infinite data values, such as f...
متن کاملDomain Theory for Modeling OOP: A Summary (Domain Theory for The Construction of NOOP, and The Construction of COOP as a Step Towards Constructing NOOP)
Domain theory is ‘a mathematical theory that serves as a foundation for the semantics of programming languages’ [AJ94]. Domains form the basis of a theory of partial information, which extends the familiar notion of partial function to encompass a whole spectrum of “degrees of definedness”, so as to model incremental higher-order computation (i.e., computing with infinite data values, such as f...
متن کاملAn Overview of Nominal-Typing versus Structural-Typing in Object-Oriented Programming
NOOP [4, 6, 7, 8] is a mathematical model of nominally-typed OOP that proves the identification of inheritance and subtyping in mainstream nominally-typed OO programming languages and the validity of this identification [11]. This report gives an overview of the main notions in OOP relevant to constructing a mathematical model of OOP such as NOOP. The emphasis in this report is on defining nomi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره abs/1603.08648 شماره
صفحات -
تاریخ انتشار 2016